package myjava.d_time;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @Auther: cty
 * @Date: 2019/11/6 下午8:02
 * @Description:  DateFormat类主要用途是将当前时间转化为指定的字符串格式！
 * 测试时间对象和字符串之间的相互转换，DateFormat抽象类和SimpleDateFormat实现类的使用
 * @version: 1.0
 */
public class B_TestDateFormat {
    public static void main(String[] args) throws ParseException {

        //把时间对象按照"指定格式"转成相应的字符串
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd EE hh:mm:ss");
        String str = df.format(new Date(4000));
        System.out.println(str);  //res: 1970-01-01 周四 08:00:04

        //把“指定格式”的字符串转成相应的时间对象
        DateFormat df2 = new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒");
        Date date = df2.parse("1997年01月16日 08时00分00秒");
        System.out.println(date);  //res: Thu Jan 16 08:00:00 CST 1997
        System.out.println(date.getTime());  //res: 853372800000

        //测试其他的格式字符。比如：利用D，获得当前时间对象是所处年份的第几天
        DateFormat df3 = new SimpleDateFormat("D");
        String str3 = df3.format(new Date());
        System.out.println(str3);  //res: 20
    }
}
